package com.xuan.vo.pg.bazi;

import lombok.Data;

import java.io.Serializable;
import java.util.Date;
import java.util.List;

/**
 * 八字排盘数据返回类
 */
@Data
public class PgBaZiVo implements Serializable {

    private static final long serialVersionUID = -1L;

    /**
     * 姓名
     */
    private String name;

    /**
     * 性别（男。女）
     */
    private String sex;

    /**
     * 乾造\坤造
     */
    private String zao;

    /**
     * 占事
     */
    private String occupy;

    /**
     * 地区
     */
    private String address;

    /**
     * 日期
     */
    private Date date;

    /**
     * 公历日期
     */
    private String solarStr;

    /**
     * 农历日期
     */
    private String lunarStr;

    /**
     * 星期
     */
    private String week;

    /**
     * 季节
     */
    private String season;

    /**
     * 生肖
     */
    private String zodiac;

    /**
     * 星座
     */
    private String constellation;

    /**
     * 月相
     */
    private String yueXiang;
    /**
     * 月将
     */
    private String yueJiang;
    /**
     * 月将神
     */
    private String yueJiangShen;

    /**
     * 八字
     */
    private List<String> baZi;
    /**
     * 八字五行
     */
    private List<String> baZiWuXing;
    /**
     * 八字空亡
     */
    private List<String> baZiKongWang;
    /**
     * 八字纳音
     */
    private List<String> baZiNaYin;

    /**
     * 年干
     */
    private String yearGan;
    /**
     * 月干
     */
    private String monthGan;
    /**
     * 日干
     */
    private String dayGan;
    /**
     * 时干
     */
    private String hourGan;

    /**
     * 年干支主星
     */
    private String yearGanZhiZhuXing;
    /**
     * 月干支主星
     */
    private String monthGanZhiZhuXing;
    /**
     * 日干支主星
     */
    private String dayGanZhiZhuXing;
    /**
     * 时干支主星
     */
    private String hourGanZhiZhuXing;

    /**
     * 年支
     */
    private String yearZhi;
    /**
     * 月支
     */
    private String monthZhi;
    /**
     * 日支
     */
    private String dayZhi;
    /**
     * 时支
     */
    private String hourZhi;

    /**
     * 年干支
     */
    private String yearGanZhi;
    /**
     * 月干支
     */
    private String monthGanZhi;
    /**
     * 日干支
     */
    private String dayGanZhi;
    /**
     * 时干支
     */
    private String hourGanZhi;

    /**
     * 年干五行
     */
    private String yearGanWuXing;
    /**
     * 月干五行
     */
    private String monthGanWuXing;
    /**
     * 日干五行
     */
    private String dayGanWuXing;
    /**
     * 时干五行
     */
    private String hourGanWuXing;

    /**
     * 年支五行
     */
    private String yearZhiWuXing;
    /**
     * 月支五行
     */
    private String monthZhiWuXing;
    /**
     * 日支五行
     */
    private String dayZhiWuXing;
    /**
     * 时支五行
     */
    private String hourZhiWuXing;

    /**
     * 年干支五行
     */
    private String yearGanZhiWuXing;
    /**
     * 月干支五行
     */
    private String monthGanZhiWuXing;
    /**
     * 日干支五行
     */
    private String dayGanZhiWuXing;
    /**
     * 时干支五行
     */
    private String hourGanZhiWuXing;

    /**
     * 年支藏干
     */
    private List<String> yearZhiCangGan;
    /**
     * 月支藏干
     */
    private List<String> monthZhiCangGan;
    /**
     * 日支藏干
     */
    private List<String> dayZhiCangGan;
    /**
     * 时支藏干
     */
    private List<String> hourZhiCangGan;

    /**
     * 年干支副星
     */
    private List<String> yearGanZhiFuXing;
    /**
     * 月干支副星
     */
    private List<String> monthGanZhiFuXing;
    /**
     * 日干支副星
     */
    private List<String> dayGanZhiFuXing;
    /**
     * 时干支副星
     */
    private List<String> hourGanZhiFuXing;

    /**
     * 年干支地势
     */
    private String yearGanZhiDiShi;
    /**
     * 月干支地势
     */
    private String monthGanZhiDiShi;
    /**
     * 日干支地势
     */
    private String dayGanZhiDiShi;
    /**
     * 时干支地势
     */
    private String hourGanZhiDiShi;

    /**
     * 年干支空亡
     */
    private String yearGanZhiKongWang;
    /**
     * 月干支空亡
     */
    private String monthGanZhiKongWang;
    /**
     * 日干支空亡
     */
    private String dayGanZhiKongWang;
    /**
     * 时干支空亡
     */
    private String hourGanZhiKongWang;

    /**
     * 年干支纳音
     */
    private String yearGanZhiNaYin;
    /**
     * 月干支纳音
     */
    private String monthGanZhiNaYin;
    /**
     * 日干支纳音
     */
    private String dayGanZhiNaYin;
    /**
     * 时干支纳音
     */
    private String hourGanZhiNaYin;

    /**
     * 年干支神煞
     */
    private List<String> yearGanZhiShenSha;
    /**
     * 月干支神煞
     */
    private List<String> monthGanZhiShenSha;
    /**
     * 日干支神煞
     */
    private List<String> dayGanZhiShenSha;
    /**
     * 时干支神煞
     */
    private List<String> hourGanZhiShenSha;
    /**
     * 小儿关煞
     */
    private List<String> xiaoErGuanSha;

    /**
     * 天干留意
     */
    private List<String> tianGanLiuYi;
    /**
     * 地支留意
     */
    private List<String> diZhiLiuYi;

    /**
     * 起运
     */
    private String qiYun;
    /**
     * 起运日期
     */
    private String qiYunDate;
    /**
     * 人元司令分野
     */
    private String renYuan;

    /**
     * 出生节气
     */
    private String birthSolarTerms;

    /**
     * 上一节气
     */
    private String prevJieQi;
    /**
     * 上一节气日期
     */
    private String prevJieQiDate;
    /**
     * 距上一节气天数
     */
    private int prevJieQiDayNumber;

    /**
     * 下一节气
     */
    private String nextJieQi;
    /**
     * 下一节气日期
     */
    private String nextJieQiDate;
    /**
     * 距下一节气天数
     */
    private int nextJieQiDayNumber;

    /**
     * 星宿
     */
    private String xingXiu;
    /**
     * 星宿吉凶
     */
    private String xiuJiXiong;
    /**
     * 星宿吉凶歌诀
     */
    private String xiuJiXiongGeJue;

    /**
     * 胎元
     */
    private String taiYuan;
    /**
     * 胎息
     */
    private String taiXi;
    /**
     * 命宫
     */
    private String mingGong;
    /**
     * 身宫
     */
    private String shenGong;

    /**
     * 命
     */
    private String ming;
    /**
     * 命卦
     */
    private String mingGua;
    /**
     * 命卦基本分析
     */
    private String mingGuaJiBen;
    /**
     * 命卦风水分析
     */
    private String mingGuaFengShui;

    /**
     * 日主属性
     */
    private String dayZhuAttribute;

    /**
     * 同党数量
     */
    private int tongDangCount;
    /**
     * 异党数量
     */
    private int yiDangCount;

    /**
     * 五行木数量（不包含地支藏干）
     */
    private int muCount;
    /**
     * 五行火数量（不包含地支藏干）
     */
    private int huoCount;
    /**
     * 五行土数量（不包含地支藏干）
     */
    private int tuCount;
    /**
     * 五行金数量（不包含地支藏干）
     */
    private int jinCount;
    /**
     * 五行水数量（不包含地支藏干）
     */
    private int shuiCount;

    /**
     * 五行木数量（包含地支藏干）
     */
    private int muZhiCount;
    /**
     * 五行火数量（包含地支藏干）
     */
    private int huoZhiCount;
    /**
     * 五行土数量（包含地支藏干）
     */
    private int tuZhiCount;
    /**
     * 五行金数量（包含地支藏干）
     */
    private int jinZhiCount;
    /**
     * 五行水数量（包含地支藏干）
     */
    private int shuiZhiCount;

    /**
     * 五行缺失（如：五行齐全）
     */
    private List<String> baZiWuXingQueShi;
    /**
     * 五行数量（如：2木 1火 2土 2金 1水）
     */
    private List<String> baZiWuXingCount;
    /**
     * 五行旺衰（如：火旺 土相 木休 水囚 金死）
     */
    private List<String> wuXingWangShuai;

    /**
     * 身体强弱（如：强）
     */
    private String bodyIntensity;
    /**
     * 喜用神（如：木）
     */
    private List<String> xiYongShen;
    /**
     * 喜用神方位（如：北）
     */
    private List<String> xiYongShenFangWei;

    /**
     * 骨重
     */
    private String guZhong;
    /**
     * 骨重批注
     */
    private String guZhongPiZhu;

    /**
     * 日柱论命
     */
    private String dayZhuLunMing;

    /**
     * 姻缘
     */
    private String yinYuan;

    /**
     * 五行分析
     */
    private String wuXingFenXi;

    /**
     * 运势分析
     */
    private String yunShiFenXi;

    /**
     * 性格分析 - 先天性格
     */
    private String xianTianXingGeFenXi;
    /**
     * 性格分析 - 潜在性格
     */
    private String qianZaiXingGeFenXi;
    /**
     * 性格分析 - 外显性格
     */
    private String waiXianXingGeFenXi;

    /**
     * 彭祖百忌
     */
    private String pengZuBaiJi;

    /**
     * 年太岁
     */
    private String yearTaiSui;
    /**
     * 月太岁
     */
    private String monthTaiSui;
    /**
     * 日太岁
     */
    private String dayTaiSui;

    /**
     * 日喜神
     */
    private String dayXiShen;
    /**
     * 日福神
     */
    private String dayFuShen;
    /**
     * 日财神
     */
    private String dayCaiShen;
    /**
     * 日阳贵神
     */
    private String dayYangGuiShen;
    /**
     * 日阴贵神
     */
    private String dayYinGuiShen;

    /**
     * 时喜神
     */
    private String hourXiShen;
    /**
     * 时福神
     */
    private String hourFuShen;
    /**
     * 时财神
     */
    private String hourCaiShen;
    /**
     * 时阳贵神
     */
    private String hourYangGuiShen;
    /**
     * 时阴贵神
     */
    private String hourYinGuiShen;

    /**
     * 值日天神
     */
    private String zhiDayTianShen;
    /**
     * 值时天神
     */
    private String zhiHourTianShen;

    /**
     * 逐月胎神
     */
    private String zhuMonthTaiShen;
    /**
     * 逐日胎神
     */
    private String zhuDayTaiShen;

    /**
     * 日宜
     */
    private List<String> dayYi;
    /**
     * 日忌
     */
    private List<String> dayJi;
    /**
     * 日吉神
     */
    private List<String> dayJiShen;
    /**
     * 日凶煞
     */
    private List<String> dayXiongSha;
    /**
     * 日煞方位
     */
    private String dayShaFangWei;
    /**
     * 日冲
     */
    private String dayChong;

    /**
     * 时宜
     */
    private List<String> hourYi;
    /**
     * 时忌
     */
    private List<String> hourJi;
    /**
     * 时煞方位
     */
    private String hourShaFangWei;
    /**
     * 时冲
     */
    private String hourChong;

    /**
     * 值年九星
     */
    private String zhiYearJiuXing;
    /**
     * 值月九星
     */
    private String zhiMonthJiuXing;
    /**
     * 值日九星
     */
    private String zhiDayJiuXing;
    /**
     * 值时九星
     */
    private String zhiHourJiuXing;

    /**
     * 大运
     */
    private List<List<String>> daYun;
    /**
     * 流年
     */
    private List<List<String>> liuNian;
    /**
     * 小运
     */
    private List<List<String>> xiaoYun;
    /**
     * 大运流月
     */
    private List<List<String>> daYunLiuYue;
    /**
     * 小运流月
     */
    private List<List<String>> xiaoYunLiuYue;

    /**
     * 大运十神
     */
    private List<List<String>> daYunShiShen;
    /**
     * 流年十神
     */
    private List<List<String>> liuNianShiShen;
    /**
     * 小运十神
     */
    private List<List<String>> xiaoYunShiShen;
    /**
     * 大运流月十神
     */
    private List<List<String>> daYunLiuYueShiShen;
    /**
     * 小运流月十神
     */
    private List<List<String>> xiaoYunLiuYueShiShen;


}


